/**
 *
 */
package com.zhuoyue.elmt.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.eit.eitsite.common.persistence.DataEntity;

/**
 * 维保合同备案Entity
 * @author chenhao
 * @version 2016-09-08
 */
public class MaintenanceContract extends DataEntity<MaintenanceContract> {
	
	private static final long serialVersionUID = 1L;
	private String contractNo;		// 合同编号
	private String maintenanceUnitId;		// 维保单位ID
	private String maintenanceUnitName;		// 维保单位名称
	private String useUnitId;		// 使用单位ID
	private String useUnitName;		// 使用单位名称
	private Date effectiveDate;		// 合同生效日期
	private Date expirationDate;		// 合同失效日期
	private String contractScan;		// 合同扫描件
	private String deviceNumber;		// 维保设备数量
	private String status;		// 状态
	private String createdBy;		// 创建人
	private Date creationDate;		// 创建时间
	private String lastUpdateBy;		// 更新人
	private Date lastUpdateDate;		// 更新时间
	private String remark;		// 备注

    private String contractName;  //合同名称
    private String collectionPeriod;  // 收款周期
    private String collectionRemark;//  收款说明
    private String userId; //项目负责人
    private String useUnitManager; //项目负责人ID
    private String contactPerson;//联系人
    private String contactNo;//联系人电话

	private String sbzcdm;

	public MaintenanceContract() {
		super();
	}

	public MaintenanceContract(String id){
		super(id);
	}

	@Length(min=0, max=50, message="合同编号长度必须介于 0 和 50 之间")
	public String getContractNo() {
		return contractNo;
	}

	public void setContractNo(String contractNo) {
		this.contractNo = contractNo;
	}
	
	@Length(min=0, max=20, message="维保单位ID长度必须介于 0 和 20 之间")
	public String getMaintenanceUnitId() {
		return maintenanceUnitId;
	}

	public void setMaintenanceUnitId(String maintenanceUnitId) {
		this.maintenanceUnitId = maintenanceUnitId;
	}
	
	@Length(min=0, max=100, message="维保单位名称长度必须介于 0 和 100 之间")
	public String getMaintenanceUnitName() {
		return maintenanceUnitName;
	}

	public void setMaintenanceUnitName(String maintenanceUnitName) {
		this.maintenanceUnitName = maintenanceUnitName;
	}
	
	@Length(min=0, max=20, message="使用单位ID长度必须介于 0 和 20 之间")
	public String getUseUnitId() {
		return useUnitId;
	}

	public void setUseUnitId(String useUnitId) {
		this.useUnitId = useUnitId;
	}
	
	@Length(min=0, max=100, message="使用单位名称长度必须介于 0 和 100 之间")
	public String getUseUnitName() {
		return useUnitName;
	}

	public void setUseUnitName(String useUnitName) {
		this.useUnitName = useUnitName;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getEffectiveDate() {
		return effectiveDate;
	}

	public void setEffectiveDate(Date effectiveDate) {
		this.effectiveDate = effectiveDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getExpirationDate() {
		return expirationDate;
	}

	public void setExpirationDate(Date expirationDate) {
		this.expirationDate = expirationDate;
	}
	
	@Length(min=0, max=200, message="合同扫描件长度必须介于 0 和 200 之间")
	public String getContractScan() {
		return contractScan;
	}

	public void setContractScan(String contractScan) {
		this.contractScan = contractScan;
	}
	
	@Length(min=0, max=10, message="维保设备数量长度必须介于 0 和 10 之间")
	public String getDeviceNumber() {
		return deviceNumber;
	}

	public void setDeviceNumber(String deviceNumber) {
		this.deviceNumber = deviceNumber;
	}
	
	@Length(min=0, max=10, message="状态长度必须介于 0 和 10 之间")
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	public String getCreatedBy() {
		return createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getCreationDate() {
		return creationDate;
	}

	public void setCreationDate(Date creationDate) {
		this.creationDate = creationDate;
	}
	
	@Length(min=0, max=20, message="更新人长度必须介于 0 和 20 之间")
	public String getLastUpdateBy() {
		return lastUpdateBy;
	}

	public void setLastUpdateBy(String lastUpdateBy) {
		this.lastUpdateBy = lastUpdateBy;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getLastUpdateDate() {
		return lastUpdateDate;
	}

	public void setLastUpdateDate(Date lastUpdateDate) {
		this.lastUpdateDate = lastUpdateDate;
	}
	
	@Length(min=0, max=254, message="备注长度必须介于 0 和 254 之间")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

    public String getContractName() {
        return contractName;
    }

    public void setContractName(String contractName) {
        this.contractName = contractName;
    }

    public String getCollectionPeriod() {
        return collectionPeriod;
    }

    public void setCollectionPeriod(String collectionPeriod) {
        this.collectionPeriod = collectionPeriod;
    }

    public String getCollectionRemark() {
        return collectionRemark;
    }

    public void setCollectionRemark(String collectionRemark) {
        this.collectionRemark = collectionRemark;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUseUnitManager() {
        return useUnitManager;
    }

    public void setUseUnitManager(String useUnitManager) {
        this.useUnitManager = useUnitManager;
    }

    public String getContactPerson() {
        return contactPerson;
    }

    public void setContactPerson(String contactPerson) {
        this.contactPerson = contactPerson;
    }

    public String getContactNo() {
        return contactNo;
    }

    public void setContactNo(String contactNo) {
        this.contactNo = contactNo;
    }

	public String getSbzcdm() {
		return sbzcdm;
	}

	public void setSbzcdm(String sbzcdm) {
		this.sbzcdm = sbzcdm;
	}
}